<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script>
    var socket;
    // 判断当前浏览器是否支持 webSocket 编程
    if (window.WebSocket){
        // go on
        socket = new WebSocket("ws://localhost:17000/hello");
        // 相当于 channelRead0，ev：收到服务器端回送的消息
        socket.onmessage = function (ev) {
            let rt = document.getElementById("responseText");
            rt.value = rt.value + "\n" + ev.data;
        }

        // 相当于连接开启（感知到连接开启）
        socket.onopen = function (ev) {
            let rt = document.getElementById("responseText");
            rt.value = "连接开启。。。";
        }

        // 相当于连接关闭（感知到连接关闭）
        socket.onclose = function (ev) {
            let rt = document.getElementById("responseText");
            rt.value = rt.value + "\n" + "连接关闭";
        }
    }else {
        alert("您的浏览器不支持 WebSocket ");
    }
    // 发送消息到服务器
    function send(message){
        if (!window.socket){  // 判断 socket 是否创建好
            return;
        }
        if (socket.readyState == WebSocket.OPEN){
            // 通过 socket 发送消息
            socket.send(message);
        }else {
            alert("连接未开启。。。");
        }
    }
</script>

<!--
  onsubmit="return false"
  表示禁止自动提交，后面通过按钮触发提交事件
-->
<form onsubmit="return false">
    <textarea name="message" style="height: 300px; width: 300px">
    </textarea>
    <input type="button" value="发送消息" onclick="send(this.form.message.value)">
    <textarea id="responseText" style="height: 300px; width: 300px">
    </textarea>
    <input type="button" value="清空内容" onclick="document.getElementById('responseText').value=''">
</form>
</body>
</html>
